:root {
    --card-height: 40vh;
    --card-width: calc(var(--card-height) / 1.5);
}

@property --rotate {
    syntax: "<angle>";
    initial-value: 90deg;
    inherits: false;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #1a1a1a;
}

.light-card {
    width: var(--card-width);
    height: var(--card-height);
    background-color: #020101;
    border-radius: 10px;
    position: relative;
}

.light-card::after {
    content: "";
    position: absolute;
    top: 10%;
    left: 0;
    right: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(var(--rotate), #f7ddba, #f97a57 43%, #ca2a4e);
    filter: blur(calc(var(--card-height) / 3));
    transition: opacity .5s;
    animation: rotate 2s linear infinite;
}

.light-card::before {
    content: "";
    width: calc(100% + 8px);
    height: calc(100% + 6px);
    border-radius: 10px;
    background-image: linear-gradient(var(--rotate), #f7ddba, #f97a57 43%, #ca2a4e);
    position: absolute;
    z-index: -1;
    top: -3px;
    left: -4px;
    animation: rotate 2s linear infinite;
}

@keyframes rotate {
    0% {
        --rotate: 0deg;
    }

    100% {
        --rotate: 360deg;
    }
}